package com.sky.service;


import com.sky.dto.DishDTO;
import com.sky.dto.DishPageQueryDTO;
import com.sky.entity.Dish;
import com.sky.result.PageResult;
import com.sky.vo.DishVO;

import java.util.List;

/**
 * 菜品管理
 */
public interface DishService {

     /**
      * 新增菜品和口味
      * @param dishDTO
      */
     void saveWithFlavor(DishDTO dishDTO);

     PageResult pageQuery(DishPageQueryDTO queryDTO);

     void deleteBatch(List<Long> ids);

     DishVO getById(Long id);

     void updateDish(DishDTO dishDTO);

     /**
      * 条件查询菜品和口味
      * @param dish
      * @return
      */
     List<DishVO> listWithFlavor(Dish dish);

     /**
      * 根据分类id查询菜品
      * @param categoryId
      * @return
      */
     List<Dish> list(Long categoryId);

     Long getCategoryByDishId(Long dishId);

     /**
      * 菜品起售停售
      * @param status
      * @param id
      */
     void startOrStop(Integer status, Long id);
}
